企业感染Mac版恶意软件的7种途径与防护
一直以来,Mac系统及终端设备的最大卖点之一就是它很少受到网络病毒感染的困扰。虽然到目前为止,Mac系统还是要比Windows、Android等系统更安全,但已经有很多真实的案例证明,macOS的安全问题需要企业组织给予更多关注和重视。
据SentinelOne公司在2022年开展的调查数据显示,运行macOS终端的企业组织正在面临更多的安全威胁,其中安全后门数量和跨平台攻击框架在快速增长,以CrateDepression、PyMafka、ChromeLoader等为代表的Mac版恶意软件已经通过多种途径感染了大量企业用户的办公设施。而且,有许多macOS威胁采用的感染途径仍然不为人知,研究人员常常只能通过一些偶然的机会发现恶意软件,或者在VirusTotal等恶意软件存储库中发现样本。
macOS感染的主要途径
为了帮助企业制定更可靠的macOS安全防护策略,以下收集整理了恶意软件危害macOS系统的7种主要途径。
途径1
免费工具诱饵
大量macOS恶意软件通过免费工具下载网站来传播,比如torrent网站、共享软件网站、破解版应用程序网站或免费的第三方应用程序分发网站。
图1
免费工具诱饵通常包括:
破解版软件;
体育直播网站;
影视、游戏和音乐下载网站;
数字版权管理(DRM)规避网站;
其他非法内容网站。
对于免费工具诱饵,攻击者可将其用于传播广告软件和捆绑包感染,最常见的情况是向用户提供免费或破解版应用程序;用户开始下载声称含有该应用程序的磁盘映像文件,但安装时发现它原来是Flash Player、AdobeFlashPlayer之类的应用程序。这些文件通常未签名,用户会得到介绍如何覆盖macOS Gatekeeper以启动它们的说明。
研究人员发现,最近有一些攻击者开始将用户引到Terminal以覆盖Gatekeeper,可能是为了绕过组织安全管理员部署的一些额外安全控制机制。有证据表明,Mac用户普遍认为浏览这类欺骗诱饵链接本身不危险,因为Mac系统“不容易感染病毒”。然而,这些网站会迅速将用户从安全搜索引到危险下载,而这些威胁常常被苹果内置的检测技术XProtect漏过。
防护建议
企业应对通过这类途径实施的macOS恶意软件感染,可以采用如下措施:
通过MDM及应用程序允许/拒绝列表,控制与软件下载有关的权限;
通过MDM解决方案或安全产品,限制对Terminal的访问;
使用第三方安全防护工具,限制或阻止未签名代码的执行;
使用端点保护软件,防止和检测已知的macOS恶意软件。
途径2
面向Mac用户的恶意广告
网页上的恶意广告可以在用户的浏览器中运行隐藏代码,将受害者重定向到恶意威胁网站。在过去的一年,针对macOS用户的已知恶意广告活动主要包括ChromeLoader和oRAT。
ChromeLoader采用恶意Chrome扩展的形式,劫持用户的搜索引擎查询,安装侦听器以拦截出站浏览器流量,并向受害者投放广告软件。
oRAT是一个用Go编写的后门植入程序,被下载到受害者的机器上,实际上是一个未签名的磁盘映像(.dmg),却伪装成一系列Bitget应用程序。磁盘映像含有一个名为Bitget Apps的软件包和分发标识符com.adobe.pkg.Bitget。经过加密的数据被附加到含有C2 IP地址等配置数据的恶意二进制代码中。
防护建议
应对通过恶意广告分发的macOS恶意软件威胁,企业可以采取如下措施:
使用防火墙和Web过滤器来阻止访问已知恶意网站,设置在某些特殊情况下,可以将防火墙策略设置为只能访问一组授权IP;
使用广告拦截软件阻止大多数广告显示,但这可能会影响性能和对一些资源的访问;
部署端点防护软件,以防止和检测通过恶意广告投放的恶意代码执行。
途径3
被感染的开发者项目
macOS攻击者正在尝试更大规模感染、实施供应链攻击以及网络间谍活动,而应用系统开发者正是高价值的攻击目标。一旦开发者在无意中将恶意代码插入到用它构建的任何iOS应用程序中,许多受感染的应用程序就会在苹果应用商店发布。受感染的应用程序能够窃取敏感信息,比如设备的唯一标识符和用户的Apple ID,并在受感染的iOS设备上执行任意代码。
研究人员发现,攻击者目前正在企图通过共享代码来感染开发者。由于开发者希望提高工作效率,他们常常寻找共享代码,而不是尝试自行编写代码,以实施复杂的库或不熟悉的API调用。
很多有用的代码可以在Github等公共代码库中找到,但这些代码库也可能含有为攻击者打开后门的恶意软件或代码。以XCSSET恶意软件为例,由于项目的****.xcworkspacdata被篡改,导致隐藏的恶意文件被引用执行,然后在开发者机器上实施多阶段感染,包括投放后门。
防护建议
应对通过这个途径分发的macOS恶意软件威胁,企业可以采取以下措施:
将开发环境与生产环境隔离;
要求所有共享的开发者项目在下载到公司设备之前通过审查和授权;
落实安全开发实践,比如安全编程指南、代码审查和结伴编程;
加强开发人员的网络安全意识培养和提升;
使用端点保护软件监测可疑和恶意代码的执行。
途径4
攻击开源软件存储库
如果攻击者攻击开源软件存储库,情况将变得更加严重。通过这些存储库共享的代码广泛用于各大企业组织的许多macOS版业务项目中,相应的安全审查工作存在大量薄弱环节。软件存储库容易受到误植域名攻击和依赖项混淆攻击。在一些情况下,合法软件包的所有权会被劫持或被转移给攻击者。例如:在2022年5月,流行的PyPI软件包PyKafka就遭到了恶意软件包PyMafka欺诈性域名攻击,其中包含了用于检查主机并确定操作系统的Python脚本。
如果设备运行macOS,它会连接到C2,下载名为MacOs的Mach-O二进制文件,并以“zad”的名称将其写入到/private/var/tmp。二进制文件用UPX打包,经过混淆处理,投放了Cobalt Strike信标。
防护建议
为了应对通过这个途径分发的威胁,安全团队可以采纳以下建议:
使用私有存储库,并配置软件包管理器,不默认使用公共存储库;
要求通过代码签名来验证软件包的真实性;
定期审计和验证来自外部的开源代码。
途径5
木马应用程序
攻击软件包存储库可能会有严重深远的影响,但它们也很显眼,容易被发现。相比之下,一些企图更隐蔽投放恶意软件的攻击者,可能更喜欢将流行应用程序变成木马病毒。
2021年,百度搜索引擎中的某些链接被发现用来通过流行应用程序iTerm2的木马版本传播恶意软件。进一步调查后发现,攻击者还同时使用了微软Remote Desktop for Mac、Navicat和SecureCRT的木马版本。这些应用程序使用了不同于合法签名的开发者签名,以确保它们不被Gatekeeper阻止。除了替换原始代码签名外,攻击者还使用了名为libcrypt.2.dylib的应用程序包修改程序,可以监视本地环境、连接到C2服务器以及通过后门执行远程命令。
研究人员最近还发现了一种开源工具的恶意版本,旨在窃取受害者的密码和钥匙链,让攻击者可以全面访问macOS中用户的所有密码。开源工具Resign Tool常被开发者用来重新签名应用程序,并将它们捆绑成ipa文件安装到iOS设备上,这表明攻击者显然在有意识的感染开发者。
防护建议
为了应对通过这个途径分发的威胁,企业可以采取的措施包括如下:
验证所有代码都已签名,并与适当的已知开发者签名相对应;
使用安全产品限制或阻止未签名代码的执行;
使用端点保护软件防止和检测可疑或恶意代码的执行。
途径6
漏洞攻击
一种不太常见的感染途径,需要攻击者具备一定专业知识才能得逞,那就是利用浏览器漏洞感染中毒网站的访问者。浏览器上存在了一些危险的0day漏洞,即使被修复后,这些漏洞仍可能作为N-day漏洞来攻击未及时更新浏览器的企业。
最近发现的利用macOS漏洞并将其用于攻击的攻击者就Macma负责的一个APT组织。据谷歌TAG的研究人员称,Macma结合了WebKit中的N-day远程代码执行漏洞(CVE-2021-1789)和XNU中的0day本地特权升级漏洞(CVE-2021-30869)。这些漏洞用于在内存中加载和执行Mach-O二进制文件,能够逃脱Safari沙箱,提升特权,并从C2下载第二阶段载荷。
防护建议
为了应对通过这个途径分发的威胁,企业组织可以采取以下措施:
确保系统和应用程序是最新版本,防止利用N-day漏洞发动的攻击;
部署智能化主动式安全解决方案,以检测0day感染链中出现的可疑行为;
部署支持在较长时间内关联分析威胁并溯源的安全解决方案。
途径7
软件供应链攻击
前面讨论的一些感染途径已经被用于实施的软件供应链攻击,尤其是涉及木马应用程序、共享开发者代码和软件包存储库的攻击。早在2016年,流行的macOS torrent客户软件Trransmission就被发现感染上了macOS勒索软件。而在2022年,研究人员发现APT 27组织闯入了属于MiMi聊天应用程序的服务器,将恶意JavaScript添加到了用于安装某流行聊天应用程序的磁盘映像中。当用户运行安装程序后,恶意软件会主动联系远程IP,以检索rshell二进制文件。
防护建议
相比以上感染路径的防护,企业防御软件供应链攻击需要更加全面的安全策略,包括上述的大部分建议,同时还要特别关注以下建议:
对所有供应商和合作伙伴进行摸底调查,确保它们落实了良好的安全措施;
定期审计和核查供应链安全,包括记录更新供应商和合作伙伴的最新变化;
在整个组织内实施可靠的安全控制措施,包括使用新一代的端点、云和身份管理安全控制措施;
定期更新软件系统,修补漏洞。
如何判断macOS已被感染?
企业应该注意某些告警信号,以确定macOS终端设备是否已被感染恶意软件:
▶ 检查macOS设备是否过热。当macOS设备过热时,可能是恶意应用程序在过度使用CPU资源和内存,从而导致设备自身过度工作。
▶ 检查macOS是否在使用过多数据。这是macOS已被入侵的最大迹象。虽然Netflix等应用程序通常会使用大量数据(因为高分辨率视频流属于数据密集型的应用程序),但是,当出现流量异常时要及时进行验证,需要检查macOS设备设置并查看每个应用程序使用了多少数据。
▶ 检查浏览器未打开的情况下,是否也会收到弹出窗口。如果用户未使用Safari、Chrome或其他浏览器应用程序,用户的macOS设备上不应出现弹出窗口。如果仍然弹出窗口,那么这是一个危险信号。
▶ 检查是否在macOS设备上看到奇怪的应用程序。如果看到一个不记得曾下载过的应用程序,那么这是设备上安装了恶意软件的另一个危险信号。
▶ 检查应用程序是否经常崩溃。当用户的设备上存在恶意软件时,它们往往会占用额外的计算资源,因此其他应用程序将无法正常运行并且更有可能崩溃。
▶ 检查电池耗电是否比平时快。如前所述,恶意软件应用程序往往会占用资源,因为它们正在传输和上传数据,或者在后端安装更多恶意软件。因此,用户的macOS设备将比平时更快地消耗电量。
▶ 检查macOS设备是否运行缓慢。这是检查macOS系统是否已感染恶意软件的最后标志。
参考链接:
https://www.sentinelone.com/blog/7-ways-threat-actors-deliver-macos-malware-in-the-enterprise/
https://www.cybertalk.org/2022/02/24/can-iphones-get-viruses-from-websites-truth-revealed/
相关阅读